package com.factory.factorymethod.section2;

/**
 * 具体工厂类
 */
public class ConcreteCreator extends Creator {

	/**
	 * 与简单工厂区别就是:
	 * 1.简单工厂的工厂方法是static的
	 * 2.简单工厂没有提取出来一个抽象工厂,直接是具体产品工厂
	 */
	public <T extends Product> T createProduct(Class<T> c){
		Product product=null;
		try {
			 product = (Product)Class.forName(c.getName()).newInstance();
		} catch (Exception e) {
			//异常处理
		}		
		return (T)product;		
	}

}
